package com.rightsidetech.activity.mapper;

import com.rightsidetech.activity.dto.request.store.MtActivityActStoreIdReq;
import com.rightsidetech.activity.dto.response.mtUserJoinActivityPrizeResp;
import com.rightsidetech.activity.dto.response.store.MtActivityLuckInfoResp;
import com.rightsidetech.activity.dto.response.store.app.MtLotteryResp;
import com.rightsidetech.activity.entity.MtUserJoinActivityPrize;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface MtUserJoinActivityPrizeMapper {
    int deleteByPrimaryKey(Long id);

    int insert(MtUserJoinActivityPrize record);

    int insertSelective(MtUserJoinActivityPrize record);

    MtUserJoinActivityPrize selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(MtUserJoinActivityPrize record);

    int updateByPrimaryKey(MtUserJoinActivityPrize record);

    List<MtActivityLuckInfoResp> selectPrize(MtActivityActStoreIdReq req);

    int selectCountByActIdAndStoreId(@Param("actId") Long actId,@Param("storeId") Long storeId);

    List<MtLotteryResp> selectLotteryList(@Param("actId") Long actId,@Param("storeId") Long storeId);

    List<mtUserJoinActivityPrizeResp> selectMtUserJoinActivityPrize(MtActivityActStoreIdReq req);

    Long selectCountNumByActivityIdAndUserAccountId(@Param("actId") Long actId,@Param("userAccountId") Long userAccountId);
}